package com.wujing.constructor

import scala.beans.BeanProperty


/**
 * scala 创建对象的流程
 * 1.加载类的属性和方法
 * 2.在内存种开辟空间
 * 3.使用父类的构造器进行初始化
 * 4.使用主构造器初始化
 * 5.使用辅助构造器初始化
 * 6.将开辟的对象地址赋值给p
 */
object Demo03 {
  def main(args: Array[String]): Unit = {
    val worker = new Worker2("jack")
    println(worker.name)
//    worker.name=”“
  }

  //如果主构造器是worker 那么inname 是一个局部变量
  // @BeanProperty 可以像 java 一样  get set  方法
  class Worker(inName:String){
    @BeanProperty var name=inName
  }
  //如果Worker2(val inName:String) 那么inname 是一个私有属性
  class Worker2(val inName:String){
    var name=inName
  }


}
